<?php
class venda_produto{
	private $id;
	private $id_empresa;
	private $id_venda;
	private $id_marca;
	private $id_setor;
	private $codebar;
	private $nome;
	private $quantidade;
	private $valor;
	private $dt_venc;
	private $medida;

	public function __construct(){
		$this->id = NULL;
		$this->id_empresa = NULL;
		$this->id_venda = NULL;
		$this->id_marca = NULL;
		$this->id_setor = NULL;
		$this->codebar = NULL;
		$this->nome = NULL;
		$this->quantidade = NULL;
		$this->valor = NULL;
		$this->dt_venc = NULL;
		$this->medida = NULL;
	}

	public function get_id(){
		return $this->id;
	}
	public function get_id_empresa(){
		return $this->id_empresa;
	}
	public function get_id_venda(){
		return $this->id_venda;
	}
	public function get_id_marca(){
		return $this->id_marca;
	}
	public function get_id_setor(){
		return $this->id_setor;
	}
	public function get_codebar(){
		return $this->codebar;
	}
	public function get_nome(){
		return $this->nome;
	}
	public function get_quantidade(){
		return $this->quantidade;
	}
	public function get_valor(){
		return $this->valor;
	}
	public function get_dt_venc(){
		return $this->dt_venc;
	}
	public function get_medida(){
		return $this->medida;
	}
	
	
	public function set_id($id){
		if($id != '' && valida::numero($id)){
                    $this->id = $id;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_empresa($id_empresa){
		if($id_empresa != '' && valida::numero($id_empresa)){
                    $this->id_empresa = $id_empresa;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_venda($id_venda){
		if($id_venda != '' && valida::numero($id_venda)){
                    $this->id_venda = $id_venda;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_marca($id_marca){
		if($id_marca != '' && valida::numero($id_marca)){
                    $this->id_marca = $id_marca;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_setor($id_setor){
		if($id_setor != '' && valida::numero($id_setor)){
                    $this->id_setor = $id_setor;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_codebar($codebar){
		if($codebar != '' && valida::numero($codebar)){
                    $this->codebar = $codebar;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_nome($nome){
		if($nome != '' && valida::nome_num($nome)){
                    $this->nome = $nome;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_quantidade($quantidade){
		if($quantidade != '' && valida::float($quantidade)){
                    $this->quantidade = $quantidade;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_valor($valor){
		if($valor != '' && valida::float($valor)){
                    $this->valor = $valor;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_dt_venc($dt_venc){
                $dia = substr($dt_venc, 0, 2);
                $mes = substr($dt_venc, 3, 2);
                $ano = substr($dt_venc, 6, 4);
                
                if(!valida::numero($dia)){return 0;}
                if(!valida::numero($mes)){return 0;}
                if(!valida::numero($ano)){return 0;}
                
		if(valida::data($dia, $mes, $ano)){
                    $this->dt_venc = $ano."-".$mes."-".$dia;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_medida($medida){
                $medida = addslashes($medida);
                $this->medida = $medida;
                return 1;
        }

	
	
	public function salvar(){
		$sql = "replace into sgm_venda_produto(id, id_empresa, id_venda, id_marca, id_setor, codebar, nome, quantidade, valor, dt_venc, medida) values('".$this->id."', '".$this->id_empresa."', '".$this->id_venda."', '".$this->id_marca."', '".$this->id_setor."', '".$this->codebar."', '".$this->nome."', '".$this->quantidade."', '".$this->valor."', '".$this->dt_venc."', '".$this->medida."')";
                
		$db = new db(config::$driver);
 		$con = $db->conecta();
                $res = $db->query($sql, $con);
		$db->close($con);
                
                if($this->id != NULL){
                    $texto = "Alterar";
                }else{
                    $texto = "Inserir";
                }
                $texto .= "Produtos por venda: ID = '".$this->id."', ID da venda = '".$this->id_venda."', ID da marca = '".$this->id_marca."', ID do setor = '".$this->id_setor."', código de barras = '".$this->codebar."', Nome do produto = '".$this->nome."', Quantidade vendida = '".$this->quantidade."', Valor = '".$this->valor."', Data de vencimento = '".$this->dt_venc."', Unidade de medida = '".$this->medida."'";
                $log = new log($_SESSION["sgm_id_empresa"], $_SESSION["sgm_usuario"], $texto);
                unset($log);
                
		return $res;
	}
        
	public function carregar($id){
		$sql = "select * from sgm_venda_produto where id = '$id'";

		$db = new db(config::$driver);
 		$con = $db->conecta();
		$res = $db->query($sql, $con);
		$db->close($con);

		$sgm_venda_produto = $db->fetch_array($res);

		$this->id = $sgm_venda_produto["id"];
		$this->id_empresa = $sgm_venda_produto["id_empresa"];
		$this->id_venda = $sgm_venda_produto["id_venda"];
		$this->id_marca = $sgm_venda_produto["id_marca"];
		$this->id_setor = $sgm_venda_produto["id_setor"];
		$this->codebar = $sgm_venda_produto["codebar"];
		$this->nome = $sgm_venda_produto["nome"];
		$this->quantidade = $sgm_venda_produto["quantidade"];
		$this->valor = $sgm_venda_produto["valor"];
		$this->dt_venc = $sgm_venda_produto["dt_venc"];
		$this->medida = $sgm_venda_produto["medida"];
		
		return 1;
	}
}
?>
